/**
 * @param {number} c
 * @return {boolean}
 */
 var judgeSquareSum = function(c) {
    if((c-3)%4===0){
        return false;
    }
    let edge=Math.floor(Math.sqrt(c));
    for(let i=0;i<=edge;i++){
        let temp=Math.sqrt(c-i*i);
        if(parseInt(temp)==temp){
            return true;
        }
    }        
    return false;
};

console.log(judgeSquareSum(3))

// 执行用时：
// 96 ms
// , 在所有 JavaScript 提交中击败了
// 46.44%
// 的用户
// 内存消耗：
// 41.2 MB
// , 在所有 JavaScript 提交中击败了
// 10.04%
// 的用户


var judgeSquareSum = function(c) {
    let left=0,right=parseInt(Math.sqrt(c));
    while(left<=right){
        let temp=left*left+right*right;
        if(temp>c){
            right--;
        }
        else if(temp<c){
            left++;
        }
        else{
            return true;
        }
    }
    return false;
};


// 执行用时：
// 100 ms
// , 在所有 JavaScript 提交中击败了
// 31.80%
// 的用户
// 内存消耗：
// 37.9 MB
// , 在所有 JavaScript 提交中击败了
// 62.34%
// 的用户